home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Pascal Super Library
/
Pascal Super Library (CW International)(1997).bin
/
DELPHI32
/
AUDIO
/
AUDIO
/
MSACM32.PAS
< prev
next >
Wrap
Pascal/Delphi Source File
|
1996-08-05
|
3KB
|
100 lines
unit msacm32;
interface
Uses mmsystem, windows;
Const
ACMFORMATDETAILS_FORMAT_CHARS = 128;
WAVE_FORMAT_GSM610 = $0031;
ACM_FORMATENUMF_CONVERT = $00100000;
Type
HACMDRIVERID = THANDLE;
HACMDRIVER = THANDLE;
PACMFORMATDETAILSA = ^TACMFORMATDETAILSA;
TACMFORMATDETAILSA = record
cbStruct : DWORD;
dwFormatIndex : DWORD;
dwFormatTag : DWORD;
fdwSupport : DWORD;
pwfx : PWAVEFORMATEX;
cbwfx : DWORD;
szFormat : array[0..ACMFORMATDETAILS_FORMAT_CHARS] of char;
end;
TTRUESPEECHWAVEFORMAT = record
wfx : TWAVEFORMATEX ;
wRevision : WORD;
nSamplesPerBlock : WORD;
abReserved : array[0..28] of BYTE;
end;
PACMFORMATENUMCBA = ^TACMFORMATENUMCBA;
TACMFORMATENUMCBA = function(
hadid : THANDLE;
pafd : PACMFORMATDETAILSA;
dwInstance,
fdwSupport : DWORD
) : BOOL stdcall;
// TFNDriverProc = function(dwDriverId: DWORD; hdrvr: HDRVR;
// msg: UINT; lparam1, lparam2: LPARAM): Longint stdcall;
//function acmFormatEnumCallback(hadid : THANDLE;pafd : PACMFORMATDETAILSA; dwInstance, fdwSupport : DWORD ):BOOL; stdcall;
function acmFormatEnumA
(
had : THANDLE;
pafd : PACMFORMATDETAILSA;
fnCallback : PACMFORMATENUMCBA;
dwInstance : DWORD;
fdwEnum : DWORD
) : MMRESULT; stdcall;
Const
ACM_METRIC_COUNT_DRIVERS = 1;
ACM_METRIC_COUNT_CODECS = 2;
ACM_METRIC_COUNT_CONVERTERS = 3;
ACM_METRIC_COUNT_FILTERS = 4;
ACM_METRIC_COUNT_DISABLED = 5;
ACM_METRIC_COUNT_HARDWARE = 6;
ACM_METRIC_COUNT_LOCAL_DRIVERS = 20;
ACM_METRIC_COUNT_LOCAL_CODECS = 21;
ACM_METRIC_COUNT_LOCAL_CONVERTERS = 22;
ACM_METRIC_COUNT_LOCAL_FILTERS = 23;
ACM_METRIC_COUNT_LOCAL_DISABLED = 24;
ACM_METRIC_HARDWARE_WAVE_INPUT = 30;
ACM_METRIC_HARDWARE_WAVE_OUTPUT = 31;
ACM_METRIC_MAX_SIZE_FORMAT = 50;
ACM_METRIC_MAX_SIZE_FILTER = 51;
ACM_METRIC_DRIVER_SUPPORT = 100;
ACM_METRIC_DRIVER_PRIORITY = 101;
function acmMetrics(hao : THandle; uMetric : UINT; pMetric : Pointer) : MMRESULT ; stdcall;
Const
ACM_FORMATDETAILSF_INDEX = $00000000;
ACM_FORMATDETAILSF_FORMAT = $00000001;
ACM_FORMATDETAILSF_QUERYMASK = $0000000F;
function acmFormatDetailsA(had : THandle;pafd : PACMFORMATDETAILSA;
fdwDetails : DWORD ) : MMRESULT ; stdcall;
implementation
Const
MSACM = 'msacm32';
function acmFormatEnumA;
external MSACM name 'acmFormatEnumA';
function acmMetrics;
external MSACM name 'acmMetrics';
function acmFormatDetailsA;
external MSACM name 'acmFormatDetailsA';
end.